package com.cyf.smartCity.bean;

import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by cage on 2016/9/2.
 * 计费规则
 */
@Data
public class FeeRule {

    /**
     * 解析类型：1-解析rules，2-解析timeQuantum
     */
    public static final int PARSE_TYPE_RULES = 1;

    /**
     * 余额不足，收费方式：1.计费失败， 2.收取现金
     */
    public static final int BALANCE_FEE_TYPE_FAIL = 1;
    public static final int BALANCE_FEE_TYPE_CASH = 2;

    //    private int freeTime;       //免费时间
//    private int bFreeComp;      //免费时间参与计费
    private int maxFeeOneDay;   //全天最高收费
    private int incomplete;     //1。 按当前时间最低单位收费、2.免费 3. 人工处理
    private int onlyUseCount;       //是否仅用于统计   1是  0不是     是的时候应收照常计算，减免等于应收
    private int balanceFeeType;        // 余额不足，收费方式：1.计费失败， 2.收取现金
    private int couponTime;     // 优惠时间（单位秒）
    private int couponUnit;     // 优惠单位 1-小时 0-分钟
    private Integer freeLessThanTimePeriod = 0; // 1-小于时间段不收费


    /**
     * 解析类型：1-解析rules，2-解析timeQuantum
     */
    private Integer parseType;

    /**
     * 计费json。为了方便计费，将 “时间段计费的json” 也解析到 该字段中。
     */
    private List<TimezoneRule> rules;

    /**
     * 时间段计费的json
     */
    private List<FeeGroupTimeQuantum> timeQuantum = new ArrayList<>();
}
